[t:/]$ 지식_

rb tree의 first 찾기 비용

2015/02/27

어제 꽤 많은 데이터의 rb tree를 돌리는 데,

2중 rb tree로 되어 있고 순회 비용이 꽤 크다 싶었다.

선택한 방법은 차일드의 insert가 끝난 후 마지막 타임에 first만 모두 따로 root에 적어놓고,

이후 first 찾는 순회 비용을 절약하고자 했는데...

효과가 없다.

rb tree의 밸런싱 기능 때문에 그냥 쭉쭉 찾아버리니 depth가 깊지 않다면 그다지 효과가 없는 것 같다.

7분짜리가 6분 58초가 됨... 이게 뭐야 ;;

주요 루핑 함수를 인라인으로 바꾸자... 6분 47초가 됨..

O2 옵션을 적용하자 5분 41초가 됨..

O2 앞에 장사없다.

내 컴은 8CPU 니까 8개 쓰레드로 나눠봤다....

멀티쓰레드 앞에 장사없다. (게다가 락도 음슴)

.... 1분 32초....

그래도 문제는 있네... 하둡 MR 처럼 빨리는 안 되나.. 용량 키웠더니 한 없이 도네..





공유하기













[t:/] is not "technology - root". dawnsea, rss